package com.clkj.xiuzheng.service;

import com.clkj.xiuzheng.pojo.*;
import com.github.pagehelper.PageInfo;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * @author yawang
 * @create 2024/04/12 10:15:41
 **/
public interface UserService {

    Map login(String code);

    Map addOrder(User user);

    Map listMyUserPut(Integer userId);

    List<Shop> listMyPutShop(Integer recordId);

    void applyUserPut(Integer recordId);

    PageInfo getAllUser(Integer pageSize, Integer pageNum);

    UserInfoVo getUserInfo(Integer userId);

    Map getUserSaleRanking(Integer companyId);


    List<User> getSaleUser(Integer companyId,Integer flag);

    void addUser(User user,String areaIdList);

    void updateUserUp(Integer userId,Integer status);

    List<UserPut> getSaleUserOrder(Integer promoterId);

    void updateUserPutIsContant(Integer recordId);

    void updateUserPutReceiptContent(Integer recordId, String receiptContent);

    void addpromoterArea(String  areaIdList,Integer userId);

    List<Area> listMyArea(Integer userId);

//    void updateUserDown(Integer userId);

    Map advLogin(String userTel,String userPass);

    Map listUserAdvShop(Integer userId);

    Map payOrder(Integer recordId, String payMoney, String openId, HttpServletRequest request);

    void paySuccess(HttpServletRequest request, HttpServletResponse response);

    void addUserVisit(ShopVisit shopVisit,HttpServletRequest request);

    Map shopVisitCount(Integer userId);

    PageInfo listShopVisit(Integer page,Integer size,Integer userId,Integer status);

    void applyShopVisit(String ids,Integer status,String applyNote);


    Double UserBalance(Integer userId);

    UserImg listUserImg(Integer userId);

    void updatePass(Integer userId,String pass);

    /**
     * 3天后，更新门店锁定的状态
     * @param shopIds
     * @param recordsId
     */
    void updateShopStatus(String shopIds,String recordsId);

    void test(Integer flag);

    List<User> listGMoney(String time,Integer userId);

    String addMiniUser(String userName, String userPassword, String userTel);

    UserMini userMinilogin(String userTel, String userPassword);
}
